<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml">
		<head>
			<!-- template designed by Marco Von Ballmoos -->
			<title>Docs For Class Item</title>
			<link rel="stylesheet" href="../media/stylesheet.css" />
			<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
		</head>
		<body>
			<div class="page-body">			
<h2 class="class-name">Interface Item</h2>

<a name="sec-description"></a>
<div class="info-box">
	<div class="info-box-title">Description</div>
	<div class="nav-bar">
					<span class="disabled">Description</span> |
							<a href="#sec-descendents">Descendents</a>
			|													<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
						
					</div>
	<div class="info-box-body">
        		<!-- ========== Info from phpDoc block ========= -->
<p class="short-description"><a href="../phpContentRepository/Item.html">Item</a> is the base interface of <a href="../phpContentRepository/Node.html">Node</a> and <a href="../phpContentRepository/Property.html">Property</a>.</p>
	<ul class="tags">
				<li><span class="field">copyright:</span> Copyright &amp;copy; 2004-2005, Domain51</li>
				<li><span class="field">author:</span> PHP - Travis Swicegood &lt;<a href="mailto:travis@domain51.net">travis@domain51.net</a>&gt;</li>
				<li><span class="field">see:</span> <a href="../phpContentRepository/Node.html">Node</a>, <a href="../phpContentRepository/Property.html">Property</a></li>
			</ul>
		<p class="notes">
			Located in <a class="field" href="_Item_interface_php.html">/Item.interface.php</a> (line <span class="field">41</span>)
		</p>
		
				
		<pre></pre>
	
			</div>
</div>

	<a name="sec-descendents"></a>
	<div class="info-box">
		<div class="info-box-title">Direct descendents</div>
		<div class="nav-bar">
			<a href="#sec-description">Description</a> |
			<span class="disabled">Descendents</span>
			|															<a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
							
								</div>
		<div class="info-box-body">
			<table cellpadding="2" cellspacing="0" class="class-table">
				<tr>
					<th class="class-table-header">Class</th>
					<th class="class-table-header">Description</th>
				</tr>
								<tr>
					<td style="padding-right: 2em"><a href="../phpContentRepository/Node.html">Node</a></td>
					<td>
											The <a href="../phpContentRepository/Node.html">Node</a> interface represents a <a href="../phpContentRepository/Node.html">Node</a> in the hierarchy that makes up  the repository.
										</td>
				</tr>
								<tr>
					<td style="padding-right: 2em"><a href="../phpContentRepository/Property.html">Property</a></td>
					<td>
											A <a href="../phpContentRepository/Property.html">Property</a> object represents the smallest granularity of content  storage.
										</td>
				</tr>
							</table>
		</div>
	</div>



	<a name="sec-method-summary"></a>
	<div class="info-box">
		<div class="info-box-title">Method Summary</span></div>
		<div class="nav-bar">
			<a href="#sec-description">Description</a> |
							<a href="#sec-descendents">Descendents</a> |
												<span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
		</div>
		<div class="info-box-body">			
			<div class="method-summary">
								
				<div class="method-definition">
											<span class="method-result">void</span>
										<a href="#accept" title="details" class="method-name">accept</a>
											(<span class="var-type">ItemVisitor</span>&nbsp;<span class="var-name">$visitor</span>)
									</div>
								
				<div class="method-definition">
											<span class="method-result">object
 The</span>
										<a href="#getAncestor" title="details" class="method-name">getAncestor</a>
											(<span class="var-type">int</span>&nbsp;<span class="var-name">$degree</span>)
									</div>
								
				<div class="method-definition">
											<span class="method-result">int</span>
										<a href="#getDepth" title="details" class="method-name">getDepth</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">The</span>
										<a href="#getLocks" title="details" class="method-name">getLocks</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">string</span>
										<a href="#getName" title="details" class="method-name">getName</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">object
 The</span>
										<a href="#getParent" title="details" class="method-name">getParent</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">object
 A</span>
										<a href="#getParents" title="details" class="method-name">getParents</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">string</span>
										<a href="#getPath" title="details" class="method-name">getPath</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">array</span>
										<a href="#getPaths" title="details" class="method-name">getPaths</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">object
 The</span>
										<a href="#getTicket" title="details" class="method-name">getTicket</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">bool</span>
										<a href="#hasLocks" title="details" class="method-name">hasLocks</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">bool</span>
										<a href="#isGranted" title="details" class="method-name">isGranted</a>
											(<span class="var-type">int</span>&nbsp;<span class="var-name">$permissions</span>)
									</div>
								
				<div class="method-definition">
											<span class="method-result">bool</span>
										<a href="#isIdentical" title="details" class="method-name">isIdentical</a>
											(<span class="var-type">Item</span>&nbsp;<span class="var-name">$otherItem</span>)
									</div>
								
				<div class="method-definition">
											<span class="method-result">bool</span>
										<a href="#isNode" title="details" class="method-name">isNode</a>
										()
									</div>
								
				<div class="method-definition">
											<span class="method-result">The</span>
										<a href="#lock" title="details" class="method-name">lock</a>
											(<span class="var-type">bool</span>&nbsp;<span class="var-name">$recurse</span>, <span class="var-type">bool</span>&nbsp;<span class="var-name">$shared</span>, <span class="var-type">lockType</span>&nbsp;<span class="var-name">$lockType</span>)
									</div>
								
				<div class="method-definition">
											<span class="method-result">void</span>
										<a href="#unlock" title="details" class="method-name">unlock</a>
											(<span class="var-type">Lock</span>&nbsp;<span class="var-name">$lock</span>)
									</div>
							</div>
		</div>
	</div>		

	
	<a name="sec-methods"></a>
	<div class="info-box">
		<div class="info-box-title">Methods</div>
		<div class="nav-bar">
			<a href="#sec-description">Description</a> |
							<a href="#sec-descendents">Descendents</a> |
																<a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
						
		</div>
		<div class="info-box-body">
			<A NAME='method_detail'></A>
<a name="methodaccept" id="accept"><!-- --></a>
<div class="oddrow">
	
	<div class="method-header">
		<span class="method-title">accept</span> (line <span class="line-number">199</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Accepts an <a href="../phpContentRepository/ItemVisitor.html">ItemVisitor</a>.</p>
	<ul class="tags">
				<li><span class="field">access:</span> public</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/RepositoryException.html">RepositoryException</a>    If an error occurs.</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">void</span>
		<span class="method-name">
			accept
		</span>
					(<span class="var-type">ItemVisitor</span>&nbsp;<span class="var-name">$visitor</span>)
			</div>
	
			<ul class="parameters">
					<li>
				<span class="var-type">object
 The</span>
				<span class="var-name">$visitor</span><span class="var-description">: <a href="../phpContentRepository/ItemVisitor.html">ItemVisitor</a> to be accepted.</span>			</li>
				</ul>
		
		
	</div>
<a name="methodgetAncestor" id="getAncestor"><!-- --></a>
<div class="evenrow">
	
	<div class="method-header">
		<span class="method-title">getAncestor</span> (line <span class="line-number">133</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns the ancestor of the specified absolute degree.</p>
<p class="description"><p>An ancestor of absolute degree x is the <a href="../phpContentRepository/Item.html">Item</a> that is  x levels down along the path from the root node to  $this <a href="../phpContentRepository/Item.html">Item</a>.</p><p><ul><li>$degree = 0 returns the root node.</li><li>$degree = 1 returns the child of the root node along
       the path to $this <a href="../phpContentRepository/Item.html">Item</a>.</li><li>$degree = 2 returns the grandchild of the root node
       along the path to $this <a href="../phpContentRepository/Item.html">Item</a>.</li><li>And so on to $degree = n, where n is
       the depth of $this <a href="../phpContentRepository/Item.html">Item</a>, which returns
       $this <a href="../phpContentRepository/Item.html">Item</a> itself.</li></ul></p><p>If $degree &amp;gt; n is specified then a  <a href="../phpContentRepository/Exceptions/ItemNotFoundException.html">ItemNotFoundException</a> is thrown.</p><p>If multiple paths exist to this <a href="../phpContentRepository/Item.html">Item</a> then the path used is the  same one that is returned by <a href="../phpContentRepository/Item.html#methodgetPath">getPath()</a>.</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> ancestor of the specified absolute degree of $this    <a href="../phpContentRepository/Item.html">Item</a> along the path returned by<a href="../phpContentRepository/Item.html#methodgetPath">getPath()</a>.</li>
				<li><span class="field">access:</span> public</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/ItemNotFoundException.html">ItemNotFoundException</a>    If $degree &amp;lt; 0 or $degree &amp;gt; n    where n is the is the depth of $this <a href="../phpContentRepository/Item.html">Item</a>    along the path returned by <a href="../phpContentRepository/Item.html#methodgetPath">getPath()</a>.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/AccessDeniedException.html">AccessDeniedException</a>    If the current <a href="../phpContentRepository/Ticket.html">Ticket</a> does not have sufficient access rights to    complete the operation.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/RepositoryException.html">RepositoryException</a>    If another error occurs.</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">object
 The</span>
		<span class="method-name">
			getAncestor
		</span>
					(<span class="var-type">int</span>&nbsp;<span class="var-name">$degree</span>)
			</div>
	
			<ul class="parameters">
					<li>
				<span class="var-type">int</span>
				<span class="var-name">$degree</span><span class="var-description">: An integer, 0 &amp;lt;= $degree &amp;lt;= n where    n is the depth of $this <a href="../phpContentRepository/Item.html">Item</a> along the    path returned by <a href="../phpContentRepository/Item.html#methodgetPath">getPath()</a>.</span>			</li>
				</ul>
		
		
	</div>
<a name="methodgetDepth" id="getDepth"><!-- --></a>
<div class="oddrow">
	
	<div class="method-header">
		<span class="method-title">getDepth</span> (line <span class="line-number">266</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns the depth of this <a href="../phpContentRepository/Item.html">Item</a> in the repository tree.</p>
<p class="description"><p>Returns the depth below the root node of $this <a href="../phpContentRepository/Item.html">Item</a>  (counting $this <a href="../phpContentRepository/Item.html">Item</a> itself).</p><p><ul><li>The root <a href="../phpContentRepository/Node.html">Node</a> returns 0.</li><li>A property or child <a href="../phpContentRepository/Node.html">Node</a> of the root <a href="../phpContentRepository/Node.html">Node</a>
       returns 1.</li><li>A property or child <a href="../phpContentRepository/Node.html">Node</a> of a child <a href="../phpContentRepository/Node.html">Node</a> of the
       root returns 2.</li><li>And so on to $this <a href="../phpContentRepository/Item.html">Item</a>.</li></ul></p><p>If multiple paths exist to this <a href="../phpContentRepository/Item.html">Item</a> then the path used to  determine the depth is the same one that is returned by <a href="../phpContentRepository/Item.html#methodgetPath">getPath()</a>.</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> The depth of this <a href="../phpContentRepository/Item.html">Item</a> in the repository hierarchy.</li>
				<li><span class="field">access:</span> public</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">int</span>
		<span class="method-name">
			getDepth
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodgetLocks" id="getLocks"><!-- --></a>
<div class="evenrow">
	
	<div class="method-header">
		<span class="method-title">getLocks</span> (line <span class="line-number">373</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns all locks on this <a href="../phpContentRepository/Node.html">Node</a> or throws an  <a href="../phpContentRepository/Exceptions/UnsupportedRepositoryOperationException.html">UnsupportedRepositoryOperationException</a> if locking is not  supported.</p>
<p class="description"><p>Returns all <a href="../phpContentRepository/Level2/Lock.html">Lock</a>s on this <a href="../phpContentRepository/Node.html">Node</a>, if there are any,  otherwise returns NULL.</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> <a href="../phpContentRepository/Level2/Lock.html">Lock</a>s on $this <a href="../phpContentRepository/Node.html">Node</a></li>
				<li><span class="field">access:</span> public</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/UnsupportedRepositoryOperationException.html">UnsupportedRepositoryOperationException</a>    If locking in general is not supported.</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">The</span>
		<span class="method-name">
			getLocks
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodgetName" id="getName"><!-- --></a>
<div class="oddrow">
	
	<div class="method-header">
		<span class="method-title">getName</span> (line <span class="line-number">88</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns the name of this <a href="../phpContentRepository/Item.html">Item</a>.</p>
<p class="description"><p>The name is the last <a href="../phpContentRepository/Item.html">Item</a> in the path. If this <a href="../phpContentRepository/Item.html">Item</a>  is the root node of the repository (i.e. if  this.getDepth() == 0), an empty string will be returned.</p><p>If this <a href="../phpContentRepository/Item.html">Item</a> has multple paths then the name returned is the last  <a href="../phpContentRepository/Item.html">Item</a> in the path returned by <a href="../phpContentRepository/Item.html#methodgetPath">getPath()</a>.</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> The (or a) name of this <a href="../phpContentRepository/Item.html">Item</a> or an empty string if this    <a href="../phpContentRepository/Item.html">Item</a> is the root <a href="../phpContentRepository/Node.html">Node</a>.</li>
				<li><span class="field">access:</span> public</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">string</span>
		<span class="method-name">
			getName
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodgetParent" id="getParent"><!-- --></a>
<div class="evenrow">
	
	<div class="method-header">
		<span class="method-title">getParent</span> (line <span class="line-number">155</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns the parent of this <a href="../phpContentRepository/Item.html">Item</a>.</p>
<p class="description"><p>If this <a href="../phpContentRepository/Item.html">Item</a> has multiple paths then this method returns the  parent along the path returned by <a href="../phpContentRepository/Item.html#methodgetPath">getPath()</a>.</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> parent of this <a href="../phpContentRepository/Item.html">Item</a> along the path returned by    <a href="../phpContentRepository/Item.html#methodgetPath">getPath()</a>.</li>
				<li><span class="field">access:</span> public</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/ItemNotFoundException.html">ItemNotFoundException</a>    If there is no parent.  This only happens if $this    <a href="../phpContentRepository/Item.html">Item</a> is the root node.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/AccessDeniedException.html">AccessDeniedException</a>    If the current <a href="../phpContentRepository/Ticket.html">Ticket</a> does not have sufficient access rights to    complete the operation.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/RepositoryException.html">RepositoryException</a>    If another error occurs.</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">object
 The</span>
		<span class="method-name">
			getParent
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodgetParents" id="getParents"><!-- --></a>
<div class="oddrow">
	
	<div class="method-header">
		<span class="method-title">getParents</span> (line <span class="line-number">173</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns all parents of this <a href="../phpContentRepository/Item.html">Item</a> in a <a href="../phpContentRepository/NodeIterator.html">NodeIterator</a>.</p>
	<ul class="tags">
				<li><span class="field">return:</span> <a href="../phpContentRepository/NodeIterator.html">NodeIterator</a> over the parents of this <a href="../phpContentRepository/Item.html">Item</a>.</li>
				<li><span class="field">access:</span> public</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/ItemNotFoundException.html">ItemNotFoundException</a>    If there is no parent. This only happens if $this    <a href="../phpContentRepository/Item.html">Item</a> is the root.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/AccessDeniedException.html">AccessDeniedException</a>    If the current <a href="../phpContentRepository/Ticket.html">Ticket</a> does not have sufficient access rights to    complete the operation.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/RepositoryException.html">RepositoryException</a>    If another error occurs.</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">object
 A</span>
		<span class="method-name">
			getParents
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodgetPath" id="getPath"><!-- --></a>
<div class="evenrow">
	
	<div class="method-header">
		<span class="method-title">getPath</span> (line <span class="line-number">59</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns the path to this <a href="../phpContentRepository/Item.html">Item</a>.</p>
<p class="description"><p>If this <a href="../phpContentRepository/Item.html">Item</a> or an ancestor has multiple parents then this  <a href="../phpContentRepository/Item.html">Item</a> will have more than one path.  In that case, this method  returns one of those paths. The mechanism by which the implementation  chooses which path to return is left unspecified, the only requirement  being that for a given <a href="../phpContentRepository/Item.html">Item</a> this method always returns the same  path.</p><p>To get all paths to this <a href="../phpContentRepository/Item.html">Item</a> use <a href="../phpContentRepository/Item.html#methodgetPaths">getPaths()</a>.</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> The path (or one of the paths) of this <a href="../phpContentRepository/Item.html">Item</a>.</li>
				<li><span class="field">access:</span> public</li>
				<li><span class="field">see:</span> <a href="../phpContentRepository/Item.html#methodgetPaths">Item::getPaths()</a></li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">string</span>
		<span class="method-name">
			getPath
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodgetPaths" id="getPaths"><!-- --></a>
<div class="oddrow">
	
	<div class="method-header">
		<span class="method-title">getPaths</span> (line <span class="line-number">71</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns all paths to this <a href="../phpContentRepository/Item.html">Item</a>.</p>
<p class="description"><p>To retrieve a single path for this <a href="../phpContentRepository/Item.html">Item</a> use <a href="../phpContentRepository/Item.html#methodgetPath">getPath()</a>.</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> An array of strings: all paths that lead to this <a href="../phpContentRepository/Item.html">Item</a>.</li>
				<li><span class="field">access:</span> public</li>
				<li><span class="field">see:</span> <a href="../phpContentRepository/Item.html#methodgetPath">Item::getPath()</a></li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">array</span>
		<span class="method-name">
			getPaths
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodgetTicket" id="getTicket"><!-- --></a>
<div class="evenrow">
	
	<div class="method-header">
		<span class="method-title">getTicket</span> (line <span class="line-number">187</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns the <a href="../phpContentRepository/Ticket.html">Ticket</a> through which this <a href="../phpContentRepository/Item.html">Item</a> was acquired.</p>
<p class="description"><p>Every <a href="../phpContentRepository/Item.html">Item</a> can ultimately be traced back through a series of  method calls to the call <a href="../phpContentRepository/Ticket.html#methodgetRootNode">Ticket::getRootNode()</a>,  <a href="../phpContentRepository/Ticket.html#methodgetNodeByAbsPath">Ticket::getNodeByAbsPath()</a> or <a href="../phpContentRepository/Ticket.html#methodgetNodeByUUID">Ticket::getNodeByUUID()</a>.  This method returns that <a href="../phpContentRepository/Ticket.html">Ticket</a> object.</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> <a href="../phpContentRepository/Ticket.html">Ticket</a> through which this <a href="../phpContentRepository/Item.html">Item</a> was acquired.</li>
				<li><span class="field">access:</span> public</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">object
 The</span>
		<span class="method-name">
			getTicket
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodhasLocks" id="hasLocks"><!-- --></a>
<div class="oddrow">
	
	<div class="method-header">
		<span class="method-title">hasLocks</span> (line <span class="line-number">382</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns TRUE if there is a lock on this node,  FALSE otherwise.</p>
	<ul class="tags">
				<li><span class="field">access:</span> public</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">bool</span>
		<span class="method-name">
			hasLocks
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodisGranted" id="isGranted"><!-- --></a>
<div class="evenrow">
	
	<div class="method-header">
		<span class="method-title">isGranted</span> (line <span class="line-number">242</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns the status of this <a href="../phpContentRepository/Item.html">Item</a> regarding the specified  <a href="../phpContentRepository/Permission.html">Permission</a>s.</p>
<p class="description"><p>Returns the status of this <a href="../phpContentRepository/Item.html">Item</a> regarding the specified  $permissions (under the rights held by current  <a href="../phpContentRepository/Ticket.html">Ticket</a>).  See <a href="../phpContentRepository/Permission.html">Permission</a> and  <a href="../phpContentRepository/AccessManager.html">AccessManager</a> for more details. Equivalent to:</p><p>$AccessManager-&gt;isGranted($this, $permissions).</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> TRUE if all requested permissions are true for this    <a href="../phpContentRepository/Item.html">Item</a>; FALSE otherwise.</li>
				<li><span class="field">access:</span> public</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/UnsupportedRepositoryOperationException.html">UnsupportedRepositoryOperationException</a>    If access control discovery is not supported.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/RepositoryException.html">RepositoryException</a>    If another error occurs.</li>
				<li><span class="field">see:</span> <a href="../phpContentRepository/AccessManager.html">AccessManager</a>, <a href="../phpContentRepository/Permission.html">Permission</a></li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">bool</span>
		<span class="method-name">
			isGranted
		</span>
					(<span class="var-type">int</span>&nbsp;<span class="var-name">$permissions</span>)
			</div>
	
			<ul class="parameters">
					<li>
				<span class="var-type">int</span>
				<span class="var-name">$permissions</span><span class="var-description">: A combination of one or more of the following constants encoded as a    bitmask value:    <ul><li>Permission::ADD_NODE</li><li>Permission::SET_PROPERTY</li><li>Permission::REMOVE_ITEM</li><li>Permission::READ_ITEM</li></ul></span>			</li>
				</ul>
		
		
	</div>
<a name="methodisIdentical" id="isIdentical"><!-- --></a>
<div class="oddrow">
	
	<div class="method-header">
		<span class="method-title">isIdentical</span> (line <span class="line-number">393</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Returns TRUE if $this <a href="../phpContentRepository/Item.html">Item</a> represents  the same repository <a href="../phpContentRepository/Item.html">Item</a> as the object $otherItem.</p>
	<ul class="tags">
				<li><span class="field">access:</span> public</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">bool</span>
		<span class="method-name">
			isIdentical
		</span>
					(<span class="var-type">Item</span>&nbsp;<span class="var-name">$otherItem</span>)
			</div>
	
			<ul class="parameters">
					<li>
				<span class="var-type">object
 The</span>
				<span class="var-name">$otherItem</span><span class="var-description">: <a href="../phpContentRepository/Item.html">Item</a> to be tested for identity with $this.</span>			</li>
				</ul>
		
		
	</div>
<a name="methodisNode" id="isNode"><!-- --></a>
<div class="evenrow">
	
	<div class="method-header">
		<span class="method-title">isNode</span> (line <span class="line-number">210</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Indicates whether this <a href="../phpContentRepository/Item.html">Item</a> is a <a href="../phpContentRepository/Node.html">Node</a> or a  <a href="../phpContentRepository/Property.html">Property</a>.</p>
	<ul class="tags">
				<li><span class="field">return:</span> Returns TRUE if this <a href="../phpContentRepository/Item.html">Item</a> is a <a href="../phpContentRepository/Node.html">Node</a>;    Returns FALSE if this <a href="../phpContentRepository/Item.html">Item</a> is a <a href="../phpContentRepository/Property.html">Property</a>.</li>
				<li><span class="field">access:</span> public</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">bool</span>
		<span class="method-name">
			isNode
		</span>
				()
			</div>
	
		
		
	</div>
<a name="methodlock" id="lock"><!-- --></a>
<div class="oddrow">
	
	<div class="method-header">
		<span class="method-title">lock</span> (line <span class="line-number">335</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Places a lock on this node, or throws an  <a href="../phpContentRepository/Exceptions/UnsupportedRepositoryOperationException.html">UnsupportedRepositoryOperationException</a> if locking is not  supported.</p>
<p class="description"><p>Puts a lock on this item.</p><p>The lock is of the specified $lockType. This standard defines  only one type, <a href="../phpContentRepository/Level2/LockType.html#constWRITE_LOCK">LockType::WRITE_LOCK</a>, though more can be added by  the implementation, see <a href="../phpContentRepository/Level2/LockType.html">LockType</a> for the semantics specific to  this lock type.</p><p><strong>General points about locking</strong></p><p>Locking is an optional part of the specification. If locking is not  supported then this method will throw an  <a href="../phpContentRepository/Exceptions/UnsupportedRepositoryOperationException.html">UnsupportedRepositoryOperationException</a>, even in a level 2  implementation.</p><p>Even if locking is supported, the features of a particular  implementation  can vary along the following dimensions:</p><p>&lt;dl&gt;    &lt;dt&gt;Lock Type&lt;/dt&gt;    &lt;dd&gt;Only <a href="../phpContentRepository/Level2/LockType.html#constWRITE_LOCK">LockType::WRITE_LOCK</a> is defined by this standard. An        implementation may define other lock types.&lt;/dd&gt;    &lt;dt&gt;Lock Scope&lt;/dt&gt;    &lt;dd&gt;An implementation may choose to implement exclusive locks, shared        locks or both.&lt;/dd&gt;    &lt;dt&gt;Lock Level&lt;/dt&gt;    &lt;dd&gt;An implementation may choose to implement locking on <a href="../phpContentRepository/Node.html">Node</a>s        only or on both <a href="../phpContentRepository/Node.html">Node</a>s and <a href="../phpContentRepository/Property.html">Property</a>s. If the        implementation locks only on the <a href="../phpContentRepository/Node.html">Node</a> level this is        equivalent to a &quot;both <a href="../phpContentRepository/Node.html">Node</a>s and <a href="../phpContentRepository/Property.html">Property</a>s&quot; locking        implementaion in which locking or unlocking a <a href="../phpContentRepository/Node.html">Node</a>        automatically performs the same operation on all its        <a href="../phpContentRepository/Property.html">Property</a>s.&lt;/dd&gt;  &lt;/dl&gt;</p><p>Information about what locking support is provided is available via the  method <a href="../phpContentRepository/Workspace.html#methodgetLockCapabilities">Workspace::getLockCapabilities()</a> which returns a  <a href="../phpContentRepository/Level2/LockCapabilities.html">LockCapabilities</a> object which provides methods for querying the  locking support provided by the implementation.</p></p>
	<ul class="tags">
				<li><span class="field">return:</span> Lock object.</li>
				<li><span class="field">access:</span> public</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/AccessDeniedException.html">AccessDeniedException</a>    If the user <a href="../phpContentRepository/Ticket.html">Ticket</a> does not have the right to <a href="../phpContentRepository/Level2/Lock.html">Lock</a> this    user or does have the right to <a href="../phpContentRepository/Level2/Lock.html">Lock</a> this    <a href="../phpContentRepository/Node.html">Node</a> but an exclusive <a href="../phpContentRepository/Level2/Lock.html">Lock</a> is already held by another    user.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/UnsupportedRepositoryOperationException.html">UnsupportedRepositoryOperationException</a>    If the $lockType or $shared status is not    supported in this implementation or locking in general is not supported.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/RepositoryException.html">RepositoryException</a>    If another error occurs.</li>
				<li><span class="field">see:</span> <a href="../phpContentRepository/Workspace.html#methodgetLockCapabilities">Workspace::getLockCapabilities()</a></li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">The</span>
		<span class="method-name">
			lock
		</span>
					(<span class="var-type">bool</span>&nbsp;<span class="var-name">$recurse</span>, <span class="var-type">bool</span>&nbsp;<span class="var-name">$shared</span>, <span class="var-type">lockType</span>&nbsp;<span class="var-name">$lockType</span>)
			</div>
	
			<ul class="parameters">
					<li>
				<span class="var-type">bool</span>
				<span class="var-name">$recurse</span><span class="var-description">: If TRUE set locks on all descendants also.</span>			</li>
					<li>
				<span class="var-type">bool</span>
				<span class="var-name">$shared</span><span class="var-description">: Whether the <a href="../phpContentRepository/Level2/Lock.html">Lock</a> is shared or exclusive</span>			</li>
					<li>
				<span class="var-type">lockType</span>
				<span class="var-name">$lockType</span><span class="var-description">: The type of the lock</span>			</li>
				</ul>
		
		
	</div>
<a name="methodunlock" id="unlock"><!-- --></a>
<div class="evenrow">
	
	<div class="method-header">
		<span class="method-title">unlock</span> (line <span class="line-number">357</span>)
	</div> 
	
	<!-- ========== Info from phpDoc block ========= -->
<p class="short-description">Removes the specified $lock from this <a href="../phpContentRepository/Node.html">Node</a> or  throws an <a href="../phpContentRepository/Exceptions/UnsupportedRepositoryOperationException.html">UnsupportedRepositoryOperationException</a> if locking is  not supported.</p>
<p class="description"><p>If this <a href="../phpContentRepository/Node.html">Node</a> is not locked, then this method has no effect.</p><p>If this <a href="../phpContentRepository/Node.html">Node</a> is locked and the user of this <a href="../phpContentRepository/Ticket.html">Ticket</a> is a  user of the lock then the lock is removed.  If this <a href="../phpContentRepository/Node.html">Node</a> is  locked but the user of this <a href="../phpContentRepository/Ticket.html">Ticket</a> does not have the power to  unlock it, then an <a href="../phpContentRepository/Exceptions/AccessDeniedException.html">AccessDeniedException</a> is thrown.</p></p>
	<ul class="tags">
				<li><span class="field">access:</span> public</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/AccessDeniedException.html">AccessDeniedException</a>    In level 1: Never.    In level 2: If the user of this <a href="../phpContentRepository/Ticket.html">Ticket</a> does not have the right    to unlock this <a href="../phpContentRepository/Node.html">Node</a>.</li>
				<li><span class="field">throws:</span> <a href="../phpContentRepository/Exceptions/UnsupportedRepositoryOperationException.html">UnsupportedRepositoryOperationException</a>    If locking in general is not supported.</li>
			</ul>
	
	<div class="method-signature">
		<span class="method-result">void</span>
		<span class="method-name">
			unlock
		</span>
					(<span class="var-type">Lock</span>&nbsp;<span class="var-name">$lock</span>)
			</div>
	
		
		
	</div>
						
		</div>
	</div>


	<p class="notes" id="credit">
		Documentation generated on Fri, 31 Dec 2004 10:15:11 -0600 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.3.0RC3</a>
	</p>
	</div></body>
</html>